<html>
<head><meta charset="utf-8"><title>Rename various internal things compiler-team#451 · t-compiler/major changes · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/index.html">t-compiler/major changes</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html">Rename various internal things compiler-team#451</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="247444969"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247444969" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> triagebot <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247444969">(Jul 28 2021 at 11:02)</a>:</h4>
<p>A new proposal has been announced: <a href="https://github.com/rust-lang/compiler-team/issues/451">Rename various internal things #451</a>. It will be announced at the next meeting to try and draw attention to it, but usually MCPs are not discussed during triage meetings. If you think this would benefit from discussion amongst the team, consider proposing a design meeting.</p>



<a name="247445452"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247445452" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> bjorn3 <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247445452">(Jul 28 2021 at 11:08)</a>:</h4>
<blockquote>
<p>Region -&gt; Lifetime in general. While Region kinda makes more sense, we use Lifetime in the language</p>
</blockquote>
<p>What about renaming lifetime to region?</p>
<blockquote>
<p>Folder and fold_ -&gt; Replacer and replace_</p>
</blockquote>
<p><code>Folder</code> is the term for example Haskell uses.</p>



<a name="247446359"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247446359" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247446359">(Jul 28 2021 at 11:21)</a>:</h4>
<p>IMO lifetimes are different enough from regions as described in the literature, that it’s probably best to move away from the term and complete the name change to lifetime, instead of going back (for the record, polonius calls them "origins", and oxide "provenances")</p>



<a name="247448090"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247448090" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247448090">(Jul 28 2021 at 11:43)</a>:</h4>
<p>another renaming that this MCP could do, on the same topic: finalizing between "universal regions" vs "free regions"  (I don't remember which of the 2 is supposed to be the most up to date, but I feel it's the latter :) or something else (maybe "named lifetimes" I dunno)</p>



<a name="247448312"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247448312" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247448312">(Jul 28 2021 at 11:46)</a>:</h4>
<p>seems good to me, though I don't like <code>replace_generics</code></p>



<a name="247448333"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247448333" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247448333">(Jul 28 2021 at 11:47)</a>:</h4>
<p>maybe <code>instantiate_generic_args</code> or something like that?</p>



<a name="247448406"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247448406" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247448406">(Jul 28 2021 at 11:47)</a>:</h4>
<p>also not completely happy about <code>Replacer</code>. While it isn't a "fold" it also doesn't just replace things</p>



<a name="247448786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247448786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247448786">(Jul 28 2021 at 11:52)</a>:</h4>
<p><code>EarlyBoundRegion</code> and <code>LateBoundRegion</code> we do use these in a userfacing way, and for me  the new names don't seem perfect yet</p>



<a name="247448857"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247448857" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247448857">(Jul 28 2021 at 11:52)</a>:</h4>
<p>though I can't think of any fairly short names which do a better job here <span aria-label="sweat smile" class="emoji emoji-1f605" role="img" title="sweat smile">:sweat_smile:</span></p>



<a name="247449649"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247449649" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247449649">(Jul 28 2021 at 12:03)</a>:</h4>
<p>Assuming this is talking about <code>TypeFolder</code>, I don't think <code>Folder</code> is actually what haskell would call it. It looks more like <a href="https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Traversable.html#v:traverse"><code>traverse</code></a> or <a href="https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Traversable.html#v:mapM">monadic <code>map</code></a> (which has the same type signature). I would call it <code>map</code> if you want to de-emphasize the monadic part (the <code>&amp;mut self</code> argument) and <code>traverse</code> if you want to emphasize it</p>



<a name="247449792"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247449792" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247449792">(Jul 28 2021 at 12:04)</a>:</h4>
<p>a fold is where you produce a single data value by "summing" or performing other reduction operations along the data structure</p>



<a name="247449820"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247449820" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247449820">(Jul 28 2021 at 12:05)</a>:</h4>
<p>I think rust already uses this terminology in the <code>Iterator::fold</code> and <code>Iterator::try_fold</code> methods</p>



<a name="247453698"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247453698" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247453698">(Jul 28 2021 at 12:49)</a>:</h4>
<p><span class="user-mention silent" data-user-id="216206">lcnr</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451/near/247448312">said</a>:</p>
<blockquote>
<p>seems good to me, though I don't like <code>replace_generics</code></p>
</blockquote>
<p>I'd agree and think <code>substitute</code> would be perfectly fine, that's what Chalk uses as well</p>



<a name="247453804"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247453804" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247453804">(Jul 28 2021 at 12:50)</a>:</h4>
<p>Chalk also uses <code>Folder</code>, btw</p>



<a name="247455048"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247455048" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Esteban Küber <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247455048">(Jul 28 2021 at 13:01)</a>:</h4>
<p>I agree with most of the renames but <code>Folder</code>, to the point where I feel it was added as <a href="https://blog.codinghorror.com/new-programming-jargon/#5">a flapping duck</a> <span aria-label="sweat smile" class="emoji emoji-1f605" role="img" title="sweat smile">:sweat_smile:</span></p>



<a name="247456080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247456080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lcnr <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247456080">(Jul 28 2021 at 13:10)</a>:</h4>
<p>btw, I intend to second this MCP in a few days, even if we're still unable to decide on some of these as I think that it's both unavoidable to bikeshed here and even if not perfect, I still think that the changes will be an improvement</p>



<a name="247473760"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247473760" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247473760">(Jul 28 2021 at 15:24)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> What is oxide? You mentioned it and "provenances"; haven't heard of it before.</p>



<a name="247473809"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247473809" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Mario Carneiro <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247473809">(Jul 28 2021 at 15:24)</a>:</h4>
<p>I believe they are referring to <a href="https://arxiv.org/abs/1903.00982">https://arxiv.org/abs/1903.00982</a></p>



<a name="247473837"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247473837" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247473837">(Jul 28 2021 at 15:25)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> a formal model of rust ownership/borrowck from <span class="user-mention" data-user-id="127262">@Aaron Weiss</span> and collaborators, including niko, based on/very similar to polonius <a href="https://aaronweiss.us/pubs/draft20-oxide.pdf">https://aaronweiss.us/pubs/draft20-oxide.pdf</a></p>



<a name="247474084"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247474084" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247474084">(Jul 28 2021 at 15:27)</a>:</h4>
<p>(but Mario's arxiv link seems up to date as well; although we haven't heard much news about this work recently -- and to be fair, the same could be said about our own public work on polonius, but that starts back up with friday's sprint :)</p>



<a name="247474282"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247474282" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247474282">(Jul 28 2021 at 15:28)</a>:</h4>
<p>Thanks, and wow.</p>



<a name="247501366"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247501366" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247501366">(Jul 28 2021 at 18:53)</a>:</h4>
<p><span class="user-mention silent" data-user-id="129457">Florian Diebold</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451/near/247453698">said</a>:</p>
<blockquote>
<p><span class="user-mention silent" data-user-id="216206">lcnr</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451/near/247448312">said</a>:</p>
<blockquote>
<p>seems good to me, though I don't like <code>replace_generics</code></p>
</blockquote>
<p>I'd agree and think <code>substitute</code> would be perfectly fine, that's what Chalk uses as well</p>
</blockquote>
<p>Chalk just reused rustc terminology for many things, it's not a good precedent</p>



<a name="247501414"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247501414" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247501414">(Jul 28 2021 at 18:54)</a>:</h4>
<p>if anything, this suggests we should get consensus around doing renames in <em>both</em> Chalk and rustc</p>



<a name="247501644"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247501644" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247501644">(Jul 28 2021 at 18:55)</a>:</h4>
<p>anyway I came here because I wanted to say that I don't think we should rename <code>{Early,Late}Bound</code> at the same time, that terminology is entrenched in other ways and should probably be done separately</p>



<a name="247501794"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247501794" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247501794">(Jul 28 2021 at 18:56)</a>:</h4>
<p>my original suggestion was mostly around "folder" being a misuse of the word (I don't know the history sadly), and "substs" being unnecessarily obscure when we already use e.g. <code>GenericArg</code> for its element type</p>



<a name="247503027"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/247503027" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> triagebot <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#247503027">(Jul 28 2021 at 19:04)</a>:</h4>
<p><span class="user-group-mention" data-user-group-id="492">@T-compiler</span>: Proposal <a href="https://github.com/rust-lang/compiler-team/issues/451#issuecomment-888549158">#451</a> has been seconded, and will be approved in 10 days if no objections are raised.</p>



<a name="248609337"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248609337" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248609337">(Aug 06 2021 at 13:20)</a>:</h4>
<p>I've been confused by <code>Folder</code> in the past since I expected it to correspond to what OCaml/Haskell call fold, but it doesn't</p>



<a name="248609363"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248609363" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248609363">(Aug 06 2021 at 13:20)</a>:</h4>
<p>so certainly <span aria-label="+1" class="emoji emoji-1f44d" role="img" title="+1">:+1:</span> to that rename from my side</p>



<a name="248609447"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248609447" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248609447">(Aug 06 2021 at 13:20)</a>:</h4>
<p><span class="user-mention silent" data-user-id="271719">Mario Carneiro</span> <a href="#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451/near/247449649">said</a>:</p>
<blockquote>
<p>Assuming this is talking about <code>TypeFolder</code>, I don't think <code>Folder</code> is actually what haskell would call it. It looks more like <a href="https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Traversable.html#v:traverse"><code>traverse</code></a> or <a href="https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Traversable.html#v:mapM">monadic <code>map</code></a> (which has the same type signature). I would call it <code>map</code> if you want to de-emphasize the monadic part (the <code>&amp;mut self</code> argument) and <code>traverse</code> if you want to emphasize it</p>
</blockquote>
<p>since in Rust basically everything is implicitly in the state monad, I'd put the emphasis on the <code>map</code> part</p>



<a name="248609477"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248609477" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> RalfJ <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248609477">(Aug 06 2021 at 13:21)</a>:</h4>
<p>"Replacer" sounds... not great but not horrible I guess?^^</p>



<a name="248632488"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248632488" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248632488">(Aug 06 2021 at 16:19)</a>:</h4>
<p>Btw, renaming "Fold" to "Map" has been on the wg-traits "wishlist" for a while, see the bullet point in <a href="https://github.com/rust-lang/wg-traits/issues/16">https://github.com/rust-lang/wg-traits/issues/16</a></p>



<a name="248632633"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248632633" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248632633">(Aug 06 2021 at 16:21)</a>:</h4>
<p>Region -&gt; Lifetime is also nice; in Chalk, it's (almost?) always Lifetime</p>



<a name="248632787"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248632787" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248632787">(Aug 06 2021 at 16:22)</a>:</h4>
<p>Early/Late lifetimes, I disagree with. Eventually, wg-traits wants to move to just "bound" lifetimes (This is how it is in Chalk atm, but there's lots of work to be done in rustc for that to be possible)</p>



<a name="248632878"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248632878" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248632878">(Aug 06 2021 at 16:22)</a>:</h4>
<p>But for now, I don't think renaming those would make anything more clear</p>



<a name="248632956"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/233931-t-compiler/major%20changes/topic/Rename%20various%20internal%20things%20compiler-team%23451/near/248632956" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jack Huey <a href="https://rust-lang.github.io/zulip_archive/stream/233931-t-compiler/major-changes/topic/Rename.20various.20internal.20things.20compiler-team.23451.html#248632956">(Aug 06 2021 at 16:23)</a>:</h4>
<p><code>Substs</code>/<code>subst</code>, I haven't thought about, but rename seems to make sense</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>